﻿//牛可乐准备和n  个怪物厮杀。已知第i  个怪物的血量为ai。
//牛可乐有两个技能：
//	第一个技能是蛮牛冲撞，消耗1mp  ，可以对任意单体怪物造成1  点伤害。
//	第二个技能是蛮牛践踏，消耗xmp  ，可以对全体怪物造成1  点伤害。
//牛可乐想知道，将这些怪物全部击杀，消耗mp  的最小值的多少？
//
//输入描述 :
//	第一行两个正整数n  和x  ，分别代表怪物的数量、每次蛮牛践踏消耗的mp  值。（1≤n≤200000，1≤x≤10^9）
//	第二行n  个正整数ai，分别代表每个怪物的血量。（1≤ai≤10^9）
//输出描述 :
//	一个正整数，代表消耗mp  的最小值。
//
//输入
//	5 2
//	2 4 5 6 3
//输出
//	11
//说明
//	先对3号怪物用1次蛮牛冲撞，对4号怪物用2次蛮牛冲撞，此时消耗mp为3，怪物的血量是2，4，4，4，3。
//	然后用4次蛮牛践踏，击杀全部怪物，消耗的mp总量为11。

#include <iostream>
#include <algorithm>
using namespace std;
const int N = 2e5 + 10;
int n, x;
int arr[N];
int main()
{
	cin >> n >> x;
	for (int i = 1; i <= n; i++) cin >> arr[i];

	sort(arr + 1, arr + 1 + n);
	long long ret = 0;
	int index = max(0, n - x); // 处理 x 过⼤的情况
	ret += arr[index] * x;
	for (int i = index + 1; i <= n; i++) ret += arr[i] - arr[index];

	cout << ret << endl;

	return 0;
}
